package com.ai.entity.security;

import com.baomidou.mybatisplus.annotation.*;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.security.core.GrantedAuthority;

import java.io.Serializable;
import java.util.Date;
import java.util.List;
import java.util.Objects;

/**
 * <p>
 * 用户表
 * </p>
 *
 * @author chen
 * @since 2023-04-04 19:46:07
 */
@Data
@ApiModel(value = "SysUser对象", description = "用户表")
public class SysUserVo implements Serializable {

    private static final long serialVersionUID = 1L;

    private Integer id;

    @ApiModelProperty("账号")
    private String account;

    @ApiModelProperty("用户名")
    private String userName;

    @ApiModelProperty("用户密码")
    private String password;

    @ApiModelProperty("上一次登录时间")
    private Date lastLoginTime;

    @ApiModelProperty("账号是否可用。默认为1（可用）")
    private Boolean enabled;

    @ApiModelProperty("是否过期。默认为1（没有过期）")
    private Boolean notExpired;

    @ApiModelProperty("账号是否锁定。默认为1（没有锁定）")
    private Boolean accountNotLocked;

    @ApiModelProperty("证书（密码）是否过期。默认为1（没有过期）")
    private Boolean credentialsNotExpired;

    @ApiModelProperty("创建时间")
    private Date createTime;

    @ApiModelProperty("修改时间")
    private Date updateTime;

    @ApiModelProperty("创建人")
    private Integer createUser;

    @ApiModelProperty("修改人")
    private Integer updateUser;

    @ApiModelProperty("所拥有权限")
    private List<GrantedAuthority> grantedAuthorities;
}
